home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / games / ippon / source.lzh / shot.h < prev    next >
C/C++ Source or Header  |  2000-07-07  |  1KB  |  42 lines

  1. /* shot.h */
  2.  
  3.  
  4. typedef struct _shot {
  5.     signed short x, y;    /* 座標 */
  6.     short pt;        /* スプライトパターンNo. */
  7.     short info;        /* 反転コード・色・優先度を表わすデータ */
  8.     short type;        /* 種類 */
  9.     signed int lx, ly;    /* 32bit X,Y 座標 ( l = longword ) */
  10.     signed int vx, vy;    /* 速度 */
  11.     signed short hit_x, hit_y;    /* 当たり判定の大きさ */
  12.     struct _enemy *enemy;    /* 当たった敵のワーク */
  13.     /* == NULL なら飛んでいる、そうでなければ敵に刺さっている */
  14.  
  15.     short shot_count;    /* 刺さった回数 */
  16.     signed short off_x, off_y;    /* 敵に刺さった時のオフセット座標 */
  17.     char erase_flag;    /* このショットを消すかどうか(enemy によってセットされる) */
  18.     char status;        /* ショットの状態(未使用/飛んでいる/刺さっている) */
  19. } SHOT;
  20.  
  21.  
  22. #ifdef GLOBAL_DEFINE        /* グローバル変数の定義と宣言を1つにまとめるテク */
  23. #define Extern            /* Extern をヌル文字列に置換 */
  24. #else
  25. #define Extern extern        /* Extern を extern に置換 */
  26. #endif
  27.  
  28. Extern SHOT *shot;        /* ワークへのポインタ */
  29.  
  30.  
  31. /* p->status の値 */
  32. enum {
  33.     SHOT_STATUS_NON,    /* ショットは撃っていない */
  34.     SHOT_STATUS_FLY,    /*   〃  は飛んでいる */
  35.     SHOT_STATUS_STICK,    /*   〃  は刺さっている */
  36. };
  37.  
  38. /* 関数プロトタイプ宣言 */
  39. void ShotInit (void);
  40. void ShotAlloc (void);
  41. void ShotMove (void);
  42.